package com.common.playing.apps.comm.view.face;//package com.playing.apps.comm.view.face;
//
//import java.util.HashMap;
//import java.util.regex.Matcher;
//import java.util.regex.Pattern;
//
//import android.app.Activity;
//import android.content.Context;
//import android.graphics.drawable.Drawable;
//import android.text.Spannable;
//import android.text.SpannableStringBuilder;
//import android.text.TextUtils;
//import android.text.style.ImageSpan;
//import android.view.Display;
//
//import com.example.droidfusdklib.R;
//
//public class SmileyParser {
//	// Singleton stuff
//
//	private static SmileyParser sInstance;
//
//	public static SmileyParser getInstance(Context context) {
//		if (sInstance == null) {
//			synchronized (SmileyParser.class) {
//				if (sInstance == null) {
//					sInstance = new SmileyParser(context);
//				}
//			}
//		}
//		return sInstance;
//	}
//
//	private final Context mContext;
//	private final String[] mSmileyTexts;
//	private final Pattern mPattern;
//	private final HashMap<String, Integer> mSmileyToRes;
//
//	private SmileyParser(Context context) {
//		mContext = context;
//		mSmileyTexts = getSmileyTexts();
//		mSmileyToRes = buildSmileyToRes();
//		mPattern = buildPattern();
//	}
//
//	private String[] getSmileyTexts() {
//		String[] ret = null;
//
//		try {
//			ret = new String[] {
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x84 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x8A }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x83 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x98, (byte) 0xBA,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x89 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x8D }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x98 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x9A }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xB3 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x8C }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x81 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x9C }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x9D }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x92 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x8F }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x93 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x94 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x9E }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x96 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA5 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xB0 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA8 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA3 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA2 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xAD }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0x82 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xB2 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xB1 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA0 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xA1 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xAA }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x98, (byte) 0xB7 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xBF }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x9D, (byte) 0xA4,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x94 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x83 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x91 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xA9 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xB6 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x84 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xA0 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xA2 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x97 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x99 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x80 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x92 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0x82 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x9C }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x84 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x98, (byte) 0x80,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x98, (byte) 0x94,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x98, (byte) 0x81,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0x99 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x9A, (byte) 0xA1,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0x80 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0x9F }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9A, (byte) 0xBC }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x8A }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x89 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8F, (byte) 0xA5 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0xB0 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xBD }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xBC }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0xB8 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0xB7 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x80 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0xB9 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0xBB }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x83 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8C, (byte) 0xB4 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x83 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xBB }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x85 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x81 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x94, (byte) 0x94 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x89 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x88 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0xA9 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x8D }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x8E }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x8C }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x9C, (byte) 0x8C,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x99, (byte) 0x8F }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x8F }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0x94 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0xA4 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0xB6 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0xAA }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9B, (byte) 0x80 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x93, (byte) 0xB7 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0xA1 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x9A, (byte) 0xBD,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8F, (byte) 0x8A }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0xBF }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x93, (byte) 0x96 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x80, (byte) 0x84, (byte) 0xEF, (byte) 0xB8,
//							(byte) 0x8F }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0xA8 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0xA4 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x98, (byte) 0x95,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0xBB }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0xB4 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0xB3 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8E, (byte) 0x82 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x8E }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x89 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x93 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8D, (byte) 0x94 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x8E }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x94, (byte) 0x9E }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x92, (byte) 0x8D }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0xAD, (byte) 0x95,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xE2, (byte) 0x9D,
//							(byte) 0x8C }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x8F, (byte) 0xA9 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x90, (byte) 0xB7 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x90, (byte) 0x99 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x90, (byte) 0xB3 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x87, (byte) 0xA8, (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x87, (byte) 0xB3 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x95, (byte) 0x92 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x93, (byte) 0xB1 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x91, (byte) 0xA3 }, "UTF-8"),
//					new String(
//							new byte[] { (byte) 0xE2, (byte) 0x9C, (byte) 0x88,
//									(byte) 0xEF, (byte) 0xB8, (byte) 0x8F },
//							"UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9A, (byte) 0x80 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9A, (byte) 0x91 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9A, (byte) 0x85 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x9A, (byte) 0x93 }, "UTF-8"),
//					new String(new byte[] { (byte) 0xF0, (byte) 0x9F,
//							(byte) 0x94, (byte) 0x91 }, "UTF-8") };
//
//		} catch (Exception e) {
//			// TODO: handle exception
//		}
//		return ret;
//	}
//
//	static class Smileys {
//		// 表情图片集合
//		public static final int[] sIconIds = { R.drawable.emoji_f09f9884,
//				R.drawable.emoji_f09f988a, R.drawable.emoji_f09f9883,
//				R.drawable.emoji_e298baefb88f, R.drawable.emoji_f09f9889,
//				R.drawable.emoji_f09f988d, R.drawable.emoji_f09f9898,
//				R.drawable.emoji_f09f989a, R.drawable.emoji_f09f98b3,
//				R.drawable.emoji_f09f988c, R.drawable.emoji_f09f9881,
//				R.drawable.emoji_f09f989c, R.drawable.emoji_f09f989d,
//				R.drawable.emoji_f09f9892, R.drawable.emoji_f09f988f,
//				R.drawable.emoji_f09f9893, R.drawable.emoji_f09f9894,
//				R.drawable.emoji_f09f989e, R.drawable.emoji_f09f9896,
//				R.drawable.emoji_f09f98a5, R.drawable.emoji_f09f98b0,
//				R.drawable.emoji_f09f98a8, R.drawable.emoji_f09f98a3,
//				R.drawable.emoji_f09f98a2, R.drawable.emoji_f09f98ad,
//				R.drawable.emoji_f09f9882, R.drawable.emoji_f09f98b2,
//				R.drawable.emoji_f09f98b1, R.drawable.emoji_f09f98a0,
//				R.drawable.emoji_f09f98a1, R.drawable.emoji_f09f98aa,
//				R.drawable.emoji_f09f98b7, R.drawable.emoji_f09f91bf,
//				R.drawable.emoji_e29da4efb88f, R.drawable.emoji_f09f9294,
//				R.drawable.emoji_f09f9283, R.drawable.emoji_f09f9291,
//				R.drawable.emoji_f09f91a9, R.drawable.emoji_f09f91b6,
//				R.drawable.emoji_f09f9184, R.drawable.emoji_f09f91a0,
//				R.drawable.emoji_f09f91a2, R.drawable.emoji_f09f9197,
//				R.drawable.emoji_f09f9199, R.drawable.emoji_f09f8e80,
//				R.drawable.emoji_f09f9192, R.drawable.emoji_f09f8c82,
//				R.drawable.emoji_f09f919c, R.drawable.emoji_f09f9284,
//				R.drawable.emoji_e29880efb88f, R.drawable.emoji_e29894efb88f,
//				R.drawable.emoji_e29881efb88f, R.drawable.emoji_f09f8c99,
//				R.drawable.emoji_e29aa1efb88f, R.drawable.emoji_f09f8c80,
//				R.drawable.emoji_f09f8c9f, R.drawable.emoji_f09f9abc,
//				R.drawable.emoji_f09f928a, R.drawable.emoji_f09f9289,
//				R.drawable.emoji_f09f8fa5, R.drawable.emoji_f09f92b0,
//				R.drawable.emoji_f09f91bd, R.drawable.emoji_f09f91bc,
//				R.drawable.emoji_f09f8cb8, R.drawable.emoji_f09f8cb7,
//				R.drawable.emoji_f09f8d80, R.drawable.emoji_f09f8cb9,
//				R.drawable.emoji_f09f8cbb, R.drawable.emoji_f09f8d83,
//				R.drawable.emoji_f09f8cb4, R.drawable.emoji_f09f8e83,
//				R.drawable.emoji_f09f91bb, R.drawable.emoji_f09f8e85,
//				R.drawable.emoji_f09f8e81, R.drawable.emoji_f09f9494,
//				R.drawable.emoji_f09f8e89, R.drawable.emoji_f09f8e88,
//				R.drawable.emoji_f09f92a9, R.drawable.emoji_f09f918d,
//				R.drawable.emoji_f09f918e, R.drawable.emoji_f09f918c,
//				R.drawable.emoji_e29c8cefb88f, R.drawable.emoji_f09f998f,
//				R.drawable.emoji_f09f918f, R.drawable.emoji_f09f9194,
//				R.drawable.emoji_f09f92a4, R.drawable.emoji_f09f8eb6,
//				R.drawable.emoji_f09f92aa, R.drawable.emoji_f09f9b80,
//				R.drawable.emoji_f09f93b7, R.drawable.emoji_f09f92a1,
//				R.drawable.emoji_e29abdefb88f, R.drawable.emoji_f09f8f8a,
//				R.drawable.emoji_f09f8ebf, R.drawable.emoji_f09f9396,
//				R.drawable.emoji_f09f8084efb88f, R.drawable.emoji_f09f8ea8,
//				R.drawable.emoji_f09f8ea4, R.drawable.emoji_e29895efb88f,
//				R.drawable.emoji_f09f8dbb, R.drawable.emoji_f09f8db4,
//				R.drawable.emoji_f09f8db3, R.drawable.emoji_f09f8e82,
//				R.drawable.emoji_f09f8d8e, R.drawable.emoji_f09f8d89,
//				R.drawable.emoji_f09f8d93, R.drawable.emoji_f09f8d94,
//				R.drawable.emoji_f09f928e, R.drawable.emoji_f09f949e,
//				R.drawable.emoji_f09f928d, R.drawable.emoji_e2ad95efb88f,
//				R.drawable.emoji_e29d8c, R.drawable.emoji_f09f8fa9,
//				R.drawable.emoji_f09f90b7, R.drawable.emoji_f09f9099,
//				R.drawable.emoji_f09f90b3, R.drawable.emoji_f09f87a8f09f87b3,
//				R.drawable.emoji_f09f9592, R.drawable.emoji_f09f93b1,
//				R.drawable.emoji_f09f91a3, R.drawable.emoji_e29c88efb88f,
//				R.drawable.emoji_f09f9a80, R.drawable.emoji_f09f9a91,
//				R.drawable.emoji_f09f9a85, R.drawable.emoji_f09f9a93,
//				R.drawable.emoji_f09f9491 };
//		// 将图片映射为 文字
//		public static int aini = 0;
//		public static int aoteman = 1;
//		public static int baibai = 2;
//		public static int baobao = 3;
//		public static int beiju = 4;
//		public static int beishang = 5;
//		public static int bianbian = 6;
//		public static int bishi = 7;
//		public static int bizui = 8;
//		public static int buyao = 9;
//		public static int chanzui = 10;
//
//		// 得到图片表情 根据id
//		public static int getSmileyResource(int which) {
//			return sIconIds[which];
//		}
//	}
//
//	// NOTE: if you change anything about this array, you must make the
//	// corresponding change
//
//	// to the string arrays: default_smiley_texts and default_smiley_names in
//	// res/values/arrays.xml
//
//	public static final int[] DEFAULT_SMILEY_RES_IDS = {
//			Smileys.getSmileyResource(Smileys.aini), // 0
//			Smileys.getSmileyResource(Smileys.aoteman), // 1
//			Smileys.getSmileyResource(Smileys.baibai), // 2
//			Smileys.getSmileyResource(Smileys.baobao), // 3
//			Smileys.getSmileyResource(Smileys.beiju), // 4
//			Smileys.getSmileyResource(Smileys.beishang), // 5
//			Smileys.getSmileyResource(Smileys.bianbian), // 6
//			Smileys.getSmileyResource(Smileys.bishi), // 7
//			Smileys.getSmileyResource(Smileys.bizui), // 8
//			Smileys.getSmileyResource(Smileys.buyao), // 9
//			Smileys.getSmileyResource(Smileys.chanzui), // 10
//
//	};
//
//	/**
//	 * Builds the hashtable we use for mapping the string version of a smiley
//	 * (e.g. ":-)") to a resource ID for the icon version.
//	 */
//	private HashMap<String, Integer> buildSmileyToRes() {
//		// TODO 映射汉字部分
//		// if (DEFAULT_SMILEY_RES_IDS.length != mSmileyTexts.length) {
//		// // Throw an exception if someone updated DEFAULT_SMILEY_RES_IDS
//		//
//		// // and failed to update arrays.xml
//		//
//		// throw new IllegalStateException("Smiley resource ID/text mismatch");
//		// }
//
//		HashMap<String, Integer> smileyToRes = new HashMap<String, Integer>(
//				mSmileyTexts.length);
//		for (int i = 0; i < mSmileyTexts.length; i++) {
//			// TODO 映射汉字部分
//			smileyToRes.put(mSmileyTexts[i], Smileys.sIconIds[i]);
//		}
//
//		return smileyToRes;
//	}
//
//	/**
//	 * Builds the regular expression we use to find smileys in
//	 * {@link #addSmileySpans}.
//	 */
//	// 构建正则表达式
//	private Pattern buildPattern() {
//		// Set the StringBuilder capacity with the assumption that the average
//
//		// smiley is 3 characters long.
//
//		StringBuilder patternString = new StringBuilder(mSmileyTexts.length * 3);
//
//		// Build a regex that looks like (:-)|:-(|...), but escaping the smilies
//
//		// properly so they will be interpreted literally by the regex matcher.
//
//		patternString.append('(');
//		for (String s : mSmileyTexts) {
//			patternString.append(Pattern.quote(s));
//			patternString.append('|');
//		}
//		// Replace the extra '|' with a ')'
//
//		patternString.replace(patternString.length() - 1,
//				patternString.length(), ")");
//
//		return Pattern.compile(patternString.toString());
//	}
//
//	/**
//	 * Adds ImageSpans to a CharSequence that replace textual emoticons such as
//	 * :-) with a graphical version.
//	 *
//	 * @param text
//	 *            A CharSequence possibly containing emoticons
//	 * @return A CharSequence annotated with ImageSpans covering any recognized
//	 *         emoticons.
//	 */
//	// 根据文本替换成图片
//	public CharSequence addSmileySpans(CharSequence text) {
//		SpannableStringBuilder builder = new SpannableStringBuilder(text);
//		Matcher matcher = mPattern.matcher(text);
//		while (matcher.find()) {
//			int resId = mSmileyToRes.get(matcher.group());
//
//			builder.setSpan(new ImageSpan(mContext, resId), matcher.start(),
//					matcher.end(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//		}
//		return builder;
//	}
//
//	// 根据文本替换成图片
//	public CharSequence addSmileySpans(CharSequence text, int width,Context context) {
//		if (TextUtils.isEmpty(text)) {
//			return "";
//		}
//		SpannableStringBuilder builder = null;
//		try{
//		Display disPlay=((Activity)context).getWindowManager().getDefaultDisplay();
//		int screenH=disPlay.getHeight();
//
//		long tmp = System.currentTimeMillis();
//		builder = new SpannableStringBuilder(text);
//		Matcher matcher = mPattern.matcher(text);
//		while (matcher.find()) {
//			int scal=1;
//			int mWid=width;
//			if(screenH<=800){
//				mWid-=2;
//				scal=2;
//			}else if(mWid<18){
//				scal=2+screenH/480/2;
//			}else{
//				scal=2+screenH/480/3;
//			}
//			int fontH = (int) (mWid*scal);
//			int resId = mSmileyToRes.get(matcher.group());
//			Drawable d = mContext.getResources().getDrawable(resId);
//			int mHeight = fontH;
//			int mWidth = (int) ((float) d.getIntrinsicWidth() / (float) d
//					.getIntrinsicHeight()) * mHeight;
//			if (mWidth == 0) {
//				mWidth = d.getIntrinsicWidth();
//			}
//			d.setBounds(0, 0, mWidth, mHeight);
//
//			builder.setSpan(new ImageSpan(d), matcher.start(), matcher.end(),
//					Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//		}
//		}catch(Exception e){
//			e.printStackTrace();
//		}finally{
//			return builder;
//		}
//		//BabytreeLog.d("time = " + (System.currentTimeMillis() - tmp));
//		//return builder;
//	}
//}
